﻿using System.Windows.Forms;

namespace MultipleChoice_ExamGenerator.VariousUtils
{
    class Validators
    {
        /// <summary>
        /// Αυτή η μέθοδος δέχεται ένα Control και ελέγχει αν το Text property
        /// είναι κενό. (Δεκτά Controls = RichTextbox, ComboBox)
        /// </summary>
        /// <param name="c">Το Control που θέλουμε να κάνουμε validate</param>
        /// <param name="errorProvider">O ErrorProvider</param>
        /// <returns>true/false</returns>
        public bool ValidateRequired(Control c, ErrorProvider errorProvider)
        {
            if (c == null) return false;
            if (c is RichTextBox)
            {
                if (string.IsNullOrEmpty(c.Text.Trim()))
                {
                    errorProvider.SetError(c, "Required field.");
                    return false;
                }
                errorProvider.SetError(c, "");
                return true;
            }
            if (c is ComboBox)
            {
                if (((ComboBox)c).SelectedIndex == -1)
                {
                    errorProvider.SetError(c, "Required field.");
                    return false;
                }
                errorProvider.SetError(c, "");
                return true;
            }
            if (c is TextBox)
            {
                if (string.IsNullOrEmpty(((TextBox)c).Text.Trim()))
                {
                    errorProvider.SetError(c, "Required field.");
                    return false;
                }
                errorProvider.SetError(c, "");
                return true;
            }
            return false;
        }
    }
}
